#include <bits/pthreadtypes.h>
#include "queue.h"


typedef struct status{

     int thread_num;

     pthread_t* thread_ids;

     queue_t q;

     pthread_mutex_t lock;
     pthread_cond_t cond;



 }status_t;

 //初始化线程信息结构体
 int init_status(status_t* status, int thread_num);

 //初始化线程池
 int init_thread_pool(status_t* status);

 //初始化tcp连接
 int init_socket(int* socket_fd, char* ip, char* port);

 //将文件描述符加入epoll监听集合
 int add_epoll(int epoll_fd, int fd);

 //子线程的入库函数
 void*  thread_main(void* argv);

 //子线程与客户端交互的函数
 int to_work(int net_fd);

 //登陆验证函数
 int validate_login(int net_fd);

